//package com.nuoyan.web.config;
//
//import cn.hutool.core.text.AntPathMatcher;
//import org.springframework.beans.factory.annotation.Value;
//import org.springframework.boot.autoconfigure.AutoConfiguration;
//import org.springframework.boot.context.properties.EnableConfigurationProperties;
//import org.springframework.web.bind.annotation.RestController;
//import org.springframework.web.servlet.config.annotation.PathMatchConfigurer;
//import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
//
//import javax.annotation.Resource;
//
///**
// * @Author Jqcc
// * @Version 1.0
// * @Data 2025/2/13
// */
//@AutoConfiguration
//@EnableConfigurationProperties(WebProperties.class)
//public class NyWebAutoConfiguration implements WebMvcConfigurer {
//
//    @Resource
//    private WebProperties webProperties;
//    /**
//     * 应用名
//     */
//    @Value("${spring.application.name}")
//    private String applicationName;
//
//    @Override
//    public void configurePathMatch(PathMatchConfigurer configurer) {
//        configurePathMatch(configurer, webProperties.getAdminApi());
//        configurePathMatch(configurer, webProperties.getAppApi());
//    }
//
//    /**
//     * 设置 API 前缀，仅仅匹配 controller 包下的
//     *
//     * @param configurer 配置
//     * @param api        API 配置
//     */
//    private void configurePathMatch(PathMatchConfigurer configurer, WebProperties.Api api) {
//        AntPathMatcher antPathMatcher = new AntPathMatcher(".");
//        configurer.addPathPrefix(api.getPrefix(), clazz -> clazz.isAnnotationPresent(RestController.class)
//                && antPathMatcher.match(api.getController(), clazz.getPackage().getName())); // 仅仅匹配 controller 包
//    }
//
//}
